package com.xxwu.aspect.component;

import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.springframework.stereotype.Component;

/**
 * 使用切面类对注解进行实现，注解是一个接口无法在注解中直接实现具体内容
 * 虽然该方法是使用自定义注解，但还是要添加@Aspect才可实现
 */
@Slf4j
@Component
@Aspect
public class MyAspectDemo {
    @Before("@annotation(com.xxwu.aspect.component.MyAspect)")
    public void before(JoinPoint joinPoint) {
        log.info("定义方法执行前执行");
    }
    @After("@annotation(com.xxwu.aspect.component.MyAspect)")
    public void after(JoinPoint joinPoint) {
        log.info("定义方法执行后执行");
    }
}
